home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 7 / BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso / Files / Hyper / N-O / New & Old.cpt / File Dialog Info next >
Text File  |  1987-11-14  |  3KB  |  71 lines

  1. Date          Sat, 31 Oct 87 16 55 27 EST
  2. From  Andrew Gilmartin <ANDREW%BROWNVM.BITNET@forsythe.stanford.edu>
  3. Subject       Open and Save dialogs for HyperCard
  4.  
  5. The stack below contains two simple XFunctions to facilitate interaction
  6. with disk files.
  7.  
  8. The first, FileName, is a simple rewrite of the Steve Maller's XFunction
  9. of the same name.  FileName allows the HyperTalk script writer to query
  10. the user for the name of an existing file.
  11.  
  12. The second, NewFileName, allows the script writer to query the user for
  13. the name of a new file.
  14.  
  15. These two XFunctions, while using the Macintosh standard file package,
  16. do  depart from the standard human interface guidelines as they center
  17. the respective dialog box over the HyperCard window rather than the
  18. Macintosh Screen.
  19.  
  20. I have chosen to do this as I feel that it clearly indicates that the
  21. dialog is a result of an interaction with the card rather than with
  22. HyperCard itself, or some other application if you are running in the
  23. Multifinder environment. (I wish I could do this with HyperTalk's ask
  24. and answer commands.)
  25.  
  26. A typical script for FileName() would be
  27.  
  28.     -- FileName( <file type> )
  29.  
  30.     on mouseUp
  31.       put FileName( "TEXT" ) into sourcefile
  32.       if sourcefile is not empty then
  33.         open file sourcefile
  34.         -- read text from source file
  35.         close file sourcefile
  36.       end if
  37.     end mouseUp
  38.  
  39. The one optional parameter, <file type>, allows the script writer to
  40. display only files of a particular kind, such as text files or
  41. applications.  Typical file types are "STAK" for HyperCard stacks,
  42. "TEXT" for simple text files, and "APPL" for applications.
  43.  
  44. Unfortunately, sources for the names of other file types is limited
  45. without access to utilities such as ResEdit or MacSnoop.
  46.  
  47. A typical script for NewFileName would be
  48.  
  49.     -- NewFileName( <prompt>, <initial FileName> )
  50.  
  51.     on mouseUp
  52.       put NewFileName("Save document as?","") into targetfile
  53.       if targetfile is not empty then
  54.         -- write text to target file
  55.       end if
  56.     end mouseUp
  57.  
  58. The first required parameter, <prompt>, should be a simple descriptive
  59. statement about the request, such as, "Save document as?," or "Save test
  60. result to ."
  61.  
  62. The second required parameter is <initial FileName>.  The first time
  63. NewFileName is called this should be  empty ("") as the user is saving
  64. an untitled document.  Thereafter, it should contain the name of the
  65. document as previously given by the user.
  66.  
  67. I hope these will be of use.
  68.  
  69. Andrew Gilmartin
  70. Brown University
  71.